/**
 * 
 */
package cn.cit.wcif.member.api;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import cn.cit.wcif.member.api.exceptions.KeyNotUniqueException;
import cn.cit.wcif.member.api.exceptions.MemberNonExistenceException;
import cn.cit.wcif.member.api.exceptions.MemberRegistException;

/**
 * @author Administrator
 * 
 */
@Service
@Transactional
public interface IMemberService {

	IMemberMutable createMember();

	IMember saveMember(IMember member);

	IMember login(String email, String password)
			throws MemberNonExistenceException;

	IMember registMember(String email, String password)
			throws KeyNotUniqueException, MemberRegistException;

	IMember registMember(String email, String password, String name)
			throws KeyNotUniqueException, MemberRegistException;
}
